﻿using System;
using SteeringBehaviors;

// Token: 0x020001E1 RID: 481
public class SeekAction : AgentAction
{
	// Token: 0x06000A44 RID: 2628 RVA: 0x0005A51D File Offset: 0x0005871D
	public SeekAction(IKinematic target, float separation = 0f, float duration = 0f)
	{
		this.name = "Seek";
		this.target = target;
		this.separation = separation;
		this.duration = duration;
	}

	// Token: 0x06000A45 RID: 2629 RVA: 0x0005A545 File Offset: 0x00058745
	public override void StartAction()
	{
		this.agent.movement.StartSeekBehavior(this.target, this.separation, this.duration);
	}

	// Token: 0x06000A46 RID: 2630 RVA: 0x00059F1A File Offset: 0x0005811A
	public override bool IsCompleted()
	{
		return this.hasStarted && !this.agent.movement.move;
	}

	// Token: 0x06000A47 RID: 2631 RVA: 0x00059F3D File Offset: 0x0005813D
	public override void Interrupt()
	{
		this.agent.movement.Stop();
	}

	// Token: 0x04000F9C RID: 3996
	private float separation;

	// Token: 0x04000F9D RID: 3997
	private float duration;

	// Token: 0x04000F9E RID: 3998
	private IKinematic target;
}
